package Model.Interface;

/**
 * Interface que define um tipo model.
 * 
 * @author Grupo I
 * 
 */
public interface Model {

	/**
	 * Altera o id
	 * 
	 * @param id
	 *            o valor do novo id
	 * @throws Exception
	 */
	public void setId(String id) throws Exception;

	/**
	 * Retorna o id
	 * 
	 * @return o id
	 */
	public String getId();

	/**
	 * Apaga o arquivo do bd
	 * 
	 * @throws Exception
	 */
	public void remove() throws Exception;

	/**
	 * Salva o arquivo no bd.
	 * 
	 * @return
	 * @throws Exception
	 */
	public String save() throws Exception;

	/**
	 * Retorna o mapper
	 * 
	 * @return o mapper.
	 */
	public ModelMapper getMapper();
}
